Method and apparatus for transmitting and receiving packet in communication system

ABSTRACT

The present invention relates to a method for transmitting a packet in a communication system, the method comprising: generating drop information indicating at least one source packet to be dropped among source packets to be transmitted and whether or not to drop each of the other source packets except the at least one source packet; performing forward error correction (FEC) encoding on the drop information and the other source packets except the at least one source packet; generating a repair packet comprising repair data for restoring the drop information and a repair symbol for restoring the other source packets except the at least one source packet; and transmitting the other source packets except the at least one source packet and the repair packet.

PRIORITY

This application is a National Phase Entry of PCT InternationalApplication No. PCT/KR2015/003104, which was filed on Mar. 30, 2015, andclaims a priority to Korean Patent Application No. 10-2014-0037265,which was filed on Mar. 28, 2014, the contents of which are incorporatedherein by reference.

TECHNICAL FIELD

The present invention relates to a method and an apparatus fortransmitting and receiving a packet in a communication system.

BACKGROUND ART

In a communication system, data congestion has become more serious dueto variety of contents and an increase in high capacity contents such asHigh Definition (HD) contents and Ultra High Definition (UHD) contents.Further, due to the data congestion, contents which a sender, forexample, host A transmits is not normally transferred to a receiver, forexample, host B, and some of the contents are lost on route.

In general, since data is transmitted in the unit of packets, the lossof contents is generated in the unit of packets. The packet includes ablock of data to be transmitted, address information, and managementinformation. The data block may be, for example, a payload, the addressinformation may be a source address or a destination address, and themanagement information may be, for example, a header.

Accordingly, when the packet loss is generated in the network, thereceiver cannot receive the lost packet, and thus cannot know a datablock and management information within the lost packet. Therefore, itcauses deterioration of audio quality, degradation of video imagequality or an image breaking, an omission of a subtitle, a loss of afile and the like making an inconvenience for a user.

In order to prevent the packet loss, a method of artificially droppingand transmitting data that does not have a large influence onreproduction of contents from the packet to be transmitted is used as amethod of reducing loads of the network. The data that does not have alarge influence on the reproduction of the contents may be, for example,a B-frame. However, such a method also cannot remove the packet loss inthe network, so that Application Layer-Forward Error Correction (AL-FEC)is required as a method of restoring the packet loss generated in thenetwork even in transmission through the packet drop. Further, a methodof configuring an FEC packet and transmitting/receiving the FEC packetis required.

SUMMARY Technical Problem

The present invention provides a method and an apparatus fortransmitting/receiving a packet in a communication system.

Further, the present invention provides a method and an apparatus fortransmitting/receiving an FEC packet in a communication system.

Technical Solution

A method of transmitting a packet in a communication system according toan embodiment of the present invention includes: generating dropinformation indicating the existence or non-existence of a drop of eachof at least one source packet to be dropped and remaining source packetsexcept for the at least one source packet among source packets to betransmitted; generating a repair packet including repair data forreconstructing the drop information and a repair symbol forreconstructing the remaining source packets except for the at least onesource packet by performing Forward Error Correction (FEC) encoding onthe drop information and the remaining source packets except for the atleast one source packet; and transmitting the remaining source packetsexcept for the at least one source packet and the repair packet.

A method of receiving a packet in a communication system according toanother embodiment of the present invention includes: receiving sourcepackets and a repair packet generated by performing Forward ErrorCorrection (FEC) encoding on the source packets; acquiring repair datafor reconstructing drop information indicating the existence ornon-existence of a drop of each of the source packets and a repairsymbol for reconstructing the source packets from the repair packet;reconstructing the drop information based on the repair data andrecognizing a source packet which a transmission device dropped from thereconstructed drop information; and reconstructing a source packet lostduring transmission based on the repair symbol.

An apparatus for transmitting a packet in a communication systemaccording to an embodiment of the present invention includes: a dropinformation generator that generates drop information indicating theexistence or non-existence of a drop of each of at least one sourcepacket to be dropped among source packets to be transmitted and sourcepackets before the drop; an encoder that generates a repair packetincluding repair data for reconstructing the drop information and arepair symbol for reconstructing the remaining source packets except forthe at least one source packet by performing Forward Error Correction(FEC) encoding on the drop information and the remaining source packetsexcept for the at least one source packet; and a transmitter thattransmits the remaining source packets except for the at least onesource packet and the repair packet.

An apparatus for receiving a packet in a communication system accordingto another embodiment of the present invention includes: a receiver thatreceives source packets, drop information indicating the existence ornon-existence of a drop of each of the source packets, and a repairpacket generated by performing Forward Error Correction (FEC) encodingon the source packets; and a decoder that acquires repair data forreconstructing drop information from the repair packet and a repairsymbol for reconstructing the source packets from the repair packet,reconstructing the drop information based on the repair data andrecognizing a source packet which a transmission device dropped from thereconstructed drop information, and reconstructing a source packet lostduring transmission based on the repair symbol.

Effects of the Invention

The present invention has an effect of providing good quality contentsand services to a user through an application of FEC even in a packetdrop by providing, by a reception device, a method and an apparatus forrecognizing an FEC application method in a packet drop situation by atransmission device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example of an MPU format according to anembodiment of the present invention;

FIG. 2 illustrates an example of a block configuration of a transmissiondevice according to an embodiment of the present invention;

FIG. 3 illustrates an example of a block configuration of a receptiondevice according to an embodiment of the present invention;

FIG. 4 illustrates an example of a source packet, a source symbol, andan FEC repair packet according to an embodiment of the presentinvention;

FIG. 5 illustrates another example of a source payload, a source symbol,and an FEC repair packet according to an embodiment of the presentinvention;

FIG. 6 illustrates another example of a source payload, a source symbol,and an FEC repair packet according to an embodiment of the presentinvention;

FIG. 7 illustrates an example for generating a source packet flowaccording to an embodiment of the present invention;

FIG. 8 illustrates an example for generating a source packet block (orsource symbol block) according to an embodiment of the presentinvention;

FIG. 9 illustrates another example for generating a source packet block(or source symbol block) according to an embodiment of the presentinvention; and

FIG. 10 illustrates an example of three FEC repair packets fortransmitting generated six pieces of repair data and three repairsymbols according to an embodiment of the present invention.

DETAILED DESCRIPTION

Hereinafter, exemplary embodiments of the present invention will bedescribed in detail with reference to the accompanying drawings.Further, in the following description of the present invention, adetailed description of known functions or configurations incorporatedherein will be omitted when it may make the subject matter of thepresent invention rather unclear. The terms which will be describedbelow are terms defined in consideration of the functions in the presentinvention, and may be different according to users, intentions of theusers, or customs. Therefore, the definitions of the terms should bemade based on the contents throughout the specification.

Prior to the description of embodiments of the present invention, theterms used in the specification are defined as follows.

(1) Asset: indicates a multimedia data entity related to a uniqueidentifier and used to generate a multimedia presentation

(2) Encoding symbol: indicates a unit of data generated by an encodingprocess

(3) Encoding symbol block: indicates a set of encoding symbols

(4) FEC code: indicates an algorithm for data encoding to make anencoded data flow have a recovery from a data loss

(5) FEC payload ID (Identifier): indicates an identifier for identifyingcontents of an MMT packet for an MMT FEC scheme

(6) FEC repair: indicates an MMT packet having a repair FEC payload IDfor transferring one or more repair symbols of a repair symbol block

(7) FEC source packet: indicates an MMT packet having an MMT packet or asource FEC payload ID

(8) MMT packet: indicates a formatted unit of media data transferredusing an MMT protocol

(9) MMT payload: indicates a formatted unit of media data carrying MMTpackages and/or signaling messages by using an MMT protocol or anInternet application layer transport protocol (for example, Real-timeTransport Protocol: RTP)

(10) MMT reception entity: indicates an MMT entity that receives andconsumes media data

(11) MMT transport entity: indicates an MMT entity that transmits mediadata to one or more MMT reception entities

(12) Package: indicates logical collection of media data transferredusing an MMT

(13) Repair REC payload ID: indicates an FEC payload ID for repairpackets

(14) Repair symbol: indicates an encoding symbol including redundancyinformation for error correction

(15) Repair symbol block: indicates a sets of repair symbols that can beused for reconstructing lost source symbols

(16) Source FEC payload ID: indicates an FEC payload ID for sourcepackets

(17) Source packet block: indicates a segmented set of an FEC sourceflow protected as a single block

(18) Source symbol: indicates a unit of encoded data by an FEC encodingprocess

(19) Source symbol block: indicates a set of source symbols generatedfrom a single source packet block

In an embodiment of the present invention, each of an ISOBMFF (ISO BaseMedia File Format)-based MPU (MMT (MPEG (Moving Picture Experts Group)Media Transport) Processing Unit) and an MMT hint track is defined, andan MPU mode is defined as one method of a packetized delivery ofpackage. Further, a transmission device, for example, an MMT sendingentity can perform a packet drop through the MMT hint track in an MPUmode.

In an embodiment of the present invention, an Application Layer(AP)-Forward Error Correction (FEC) framework for the MMT is defined.Further, with respect to source packets to pass through FEC protection,a repair packet is generated using an FEC code. FEC source packetsgenerated by an addition of source FEC payload IDs (identifiers) to thesource packets due to the FEC protection and the repair packet aretransmitted together. An AL-FEC message including the FEC-relatedconfiguration information is transmitted before transmission of the FECsource packet and the repair packet or periodically transmitted, and anend having received the AL-FEC message may know the FEC-relatedconfiguration information. Since the source packet with a source FECpayload ID is transmitted, in order to generate another repair packetwith respect to the same source packet, another source FEC payload IDshould be added to the source packet. Therefore, the generation ofseveral repair packets having different FEC configurations with respectto one source packet has a limitation or is inefficient.

Further, when a transmitter transmits only a source packet withoutperformance of the FEC protection and an intermediate node of thenetwork performs the FEC protection, the intermediate node of thenetwork should add a source FEC payload ID to the source packettransmitted by the transmitter and change the source packet transmittedby the transmitter. Accordingly, a method of performing the FECprotection without adding the source FEC payload ID to the source packetis required. Embodiments of the present invention described belowprovide a method and an apparatus for performing FEC protection on asource packet in a packet drop.

A transmission method and apparatus according to an embodiment of thepresent invention generate assets and MMT packets for a signal messageto be transmitted, generate MMT packets corresponding to assets toperform FEC protection among the assets according to an MPU mode, dropat least one MMT packet among the MMT packets, separately generateinformation indicating the drop with respect to each of the dropped MMTpackets, generate repair data based on information indicating theexistence or non-existence of a drop by performing FEC protection on theinformation indicating the non-drop and the information indicating thedrop, generate a source symbol block including one or more sourcesymbols from data blocks to perform the FEC protection in the MMTpackets after the drop operation, generate one or more repair symbols byapplying the FEC to the source symbol block, generate at least one FECrepair packet to transmit the repair symbol and the repair data, andtransmit the MMT packets and the FEC repair packets.

A reception method and apparatus according to an embodiment of thepresent invention receive MMT packets and FEC repair packets from atransmission device, acquire repair data and repair symbols included inthe FEC repair packets based on FEC repair payload IDs of the receivedFEC repair packets, acquire information required for FEC decodingincluding the number, orders, and a start point of pieces of informationon the existence or non-existence of the drop of MMT packets protectedby the repair data, generate information indicating that the receivedMMT packet is not dropped based on the acquired information required forthe FEC decoding, loss-processing the information on the existence ornon-existence of the drop of MMT packets, which have not been received,to reconstruct the lost information on the existence or non-existence ofthe drop by using the repair data, recognize an actually lost MMT packetand the MMT packet which the transmission device dropped among the MMTpackets, which have not been received, in the reconstructed informationon the existence or non-existence of the drop, configure a source symbolblock from the remaining MMT packets except for the MMT packets, whichthe transmission device dropped, among the MMT packets, which have notbeen received, that is, the received MMT packets and the actually lostMMT packets, reconstruct a loss-processed source symbol within thesource symbol block by using the acquired protected symbol, andreconstruct a source packet from the source symbol. Further, thereconstructed source packets are input into an MPU de-capsulator, andthe MPU de-capsulator de-capsulates source packets by using MPU hinttrack information within an MPU header and inputs a result thereof intoa codec decoder.

According to an embodiment of the present invention, data to perform FECprotection in MMT packets after the packet drop, that is, source packetsrefer to MMT packets themselves, MMT protocol payloads except for an MMTprotocol header in the MMT packets after the packet drop, Data Units(DUs) except for an MMT packet header and an MMT packet payload headerin the MMT packets after the packet drop, or DU payloads also except fora DU header. Here, information indicating non-drop refers to flaginformation simply indicating the existence or non-existence of thedrop, length information of data to pass through FEC protection withinthe corresponding MMT packet, or information on a number of sourcesymbols (or a number of source symbol elements) generated for the FECprotection from the data to pass through the FEC protection within thecorresponding MMT packet. The FEC repair packet includes an MMT packetheader and further includes an FEC repair payload ID. The FEC repairpayload ID includes direct/indirect information required for an FECdecoding by the reception device such as a number of pieces ofinformation on the existence or non-existence of the drop protected bythe repair data of the FEC repair packet, that is, and a number, orders,and a start point of MMT packets before the drop.

Further, according to an embodiment of the present invention, thereception device may calculate information on the number of sourcesymbols within the source symbol block or the number of source symbolelements from the number of pieces of information on the existence ornon-existence of the drop and a value thereof. For example, theinformation on the existence or non-existence of the drop may be lengthinformation of data within the FEC-protected MMT packet and thereception device knows a length of the data within the FEC-protected MMTpacket in the MMT packets, which have not been dropped, so that thereception device may reconfigure a source symbol block according to asource symbol block generation method applied by the transmission devicebased on the reconstructed information on the existence or non-existenceof the drop. Of course, a source symbol for the lost MMT packet isloss-processed.

A method and an apparatus according to another embodiment of the presentinvention generate a repair symbol by performing an FEC encoding on MMTpackets after the drop. Then, an FEC repair packet is generated from thegenerated repair symbol, and the FEC repair packet is transmitted alongwith the MMT packets after the drop. A source FEC payload ID is added toeach of the FEC-protected MMT packets after the drop and the MMT packetsare transmitted.

A method and an apparatus according to another embodiment of the presentinvention reconfigure a source symbol and a repair symbol from the MMTpackets to which the received source FEC payload ID is added and the FECrepair packets. At this time, a source symbol corresponding to the lostMMT packet is loss-processed. Then, the loss-processed source symbol isreconstructed through the FEC decoding, and data to pass through the FECprotection within the lost MMT packet is acquired from the reconstructedsource symbol and input into the MPU de-capsulator. The MPUde-capsulator de-capsulates the MPU by using MPU hint track informationwithin an MPU header and inputs a result thereof into a codec decoder.

A method and an apparatus according to another embodiment of the presentinvention generate a repair symbol by adding a value appointed with thereception device by a length of the repair symbol, for example, 00 h tothe dropped MMT packet and performing the FEC encoding along with MMTpackets after the drop. An FEC repair packet is generated from thegenerated repair symbol, and the FEC repair packet is transmitted alongwith the MMT packets after the drop.

A reception method and apparatus according to another embodiment of thepresent invention recognize a dropped situation when a value of the datareconstructed by the FEC decoding is a value appointed with thetransmission device, and consider the corresponding data as invalid dataor discard the data. The reconstructed data, which has not been dropped,is input into the MPU de-capsulator, and the MPU de-capsulatorde-capsulates the MPU by using MPU hint track information within an MPUheader and inputs a result thereof into a codec decoder.

FIG. 1 illustrates an example of an MPU format according to anembodiment of the present invention.

Referring to FIG. 1, FIG. 1(a) illustrates an MPU of timed media havingtime information for decoding and presentation, and FIG. 1(b)illustrates an MPU of non-timed media having no time information fordecoding and presentation. The MPU of timed media includes datacontaining inherent time information for decoding and/or presentation ofmedia contents, and the MPU of non-timed media includes data that doesnot contain inherent time information for decoding and/or presentationof media contents.

The MPU of timed media illustrated in FIG. 1(a) includes ftyp 102, mmpu104, moov 106, moof 112, and mdat 114. The ftyp 102 includes fileinformation, the mmpu 104 includes information for MPU division, and themoov 106 includes a media track 108 and an MMT hint track 110. Here, theMMT hint track 110 includes a header for real-time packet transmission.The moof 112 is repeatedly and frequently transmitted.

The MPU of non-timed media illustrated in FIG. 1(b) includes ftyp 122,mmpu 124, moov 126, meta 130, and items 132 and 134. The ftyp 122includes file information, the mmpu 124 includes information for MPUdivision, and the moov 126 includes an MMT hint track 128.

When it is determined that the drop for the packet is required accordingto a network situation, the MMT sending entity (or sender) performssegmentation on the MPU based on information of the MMT hint tracks 110and 128 of the MPU to packetize the MPU into a plurality of packets, anddrops and transmits packets having relatively low importance such asB-frame among the plurality of packets.

FIG. 2 illustrates an example of a block configuration of a transmissiondevice according to an embodiment of the present invention.

Referring to FIG. 2, the transmission device includes a sender (orsending entity) 220, a packet drop information generator 212, a sourcesymbol block generator 214, an FEC encoder 216, and an FEC controller218.

The transmission device generates the MPU by performing MPUencapsulation 202 on a data stream generated from a codec encoder or astored data stream (asset). The asset refers to a multimedia data entityrelated to a unique ID.

Then, the transmission device performs the segmentation 204 on the MPUbased on hint track information of the MPU and performs payloadization206 by adding an MMT protocol payload header to the MPU. The MMTprotocol payload header includes information on a segmented situation ofthe MPU. Based on an assumption that the AL-FEC is applied, when it isrequired to transmit an AL-FEC message 208 by a separate packet, theAL-FEC message also passes through the payloadization process. Here,when packetization 210 is performed through the addition of the MMTprotocol header, a packet-ID for identifying the asset and a packetsequence number scoped by the packet_ID are set to each MMT protocolheader. The packet_ID identifies the asset, and a range of the packetsequence number is determined by the packet_ID.

After the packetization, when the sender 220 desires to drop the MMTpacket (or source packet), the sender 220 drops a relevant packet amongthe packets to be transmitted and then transmits the remaining packets.When the AL-FEC is applied, the packet drop information generator 212generates packet drop information of the dropped packet, for example,packet length information, and the FEC encoder 216 performs an FECencoding based on the packet drop information to generate a repairpacket. Here, the length information of the dropped packet is set as 0and, hereinafter, the repair and parity are used as the same meaning.

Further, the FEC encoder 216 generates a repair symbol block withrespect to the transmitted MMT packets by the FEC encoding and generatesan FEC repair packet including the repair data and the repair symbol.Here, the FEC repair packet refers to an MMT packet for the repair dataand the repair symbol.

Meanwhile, the source symbol block generator 214 generates a sourcesymbol block, and the FEC controller 218 controls an operation of eachof the packet drop information generator 212, the source symbol blockgenerator 214, and the FEC encoder 216.

FIG. 3 illustrates an example of a block configuration of a receptiondevice according to an embodiment of the present invention.

Referring to FIG. 3, the reception device includes a packet receiver302, an encoding symbol block generator 312, an FEC decoder 314, and anFEC controller 316.

In general, a data stream 320 is reconstructed through processes ofde-packetization 304 (for example, MMT de-packetization or parsing),de-payloadization 306 (for example, MMT de-payloadization or parsing),de-segmentation 308, and MPU de-capsulation 310. When the AL-FEC message318 is transmitted by a separate packet, if the payload stores signalingdata indicating the AL-FEC message in the process of de-payloadization306, the reception device grasps basic information on an FECconfiguration required for the FEC decoding through parsing. Then,detailed information separated for each FEC packet block is acquiredfrom a repair FEC payload ID of the FEC repair packet of thecorresponding FEC packet block.

When information on the FEC configuration required for the FEC decodingis transmitted within the FEC repair packet, FEC decoding-relatedinformation is acquired from the repair FEC payload ID of the FEC repairpacket in the process of de-packetization 304 of the FEC repair packet.The encoding symbol block generator 312 of the reception device havingreceived all the FEC decoding-related information generates packet dropinformation from the received MMT packets. At this time, packet dropinformation on MMT packets, which have not been received, is consideredas being lost. The encoding symbol, that is, packet drop information andrepair data for the packet drop information are configured using therepair data within the received FEC repair packet, and the packet dropinformation and the repair data are input into the FEC decoder 314. TheFEC decoder 314 reconstructs drop information of the lost MMT packet.

The encoding symbol block generator 312 distinguishes between theactually lost packet and the packet which the transmission device dropsamong the MMT packets, which have not been received, in thereconstructed drop information and generates a source symbol block fromthe received MMT packets based on the information. Then, an encodingsymbol, that is, a source symbol and a repair symbol for the sourcesymbol are configured using the repair symbols of the FEC repair packet,and the source symbol and the repair symbol are input into the FECdecoder 314. The FEC decoder 314 reconstructs the lost MMT packet byusing the repair symbols of the received FEC repair packet. Thereconstructed MMT packet is switched to a data stream 320 throughprocesses of de-packetization 304, de-payloadization 306,de-segmentation 308, and MPU de-capsulation 310.

FIG. 4 illustrates a format of a source packet, a source symbol and anFEC repair packet according to an embodiment of the present invention.

Referring to FIG. 4, the MMT packet, that is, a source packet 400includes an MMT packet header 402, an MMT payload header, and data (orpayload).

A source symbol 410 is generated by adding a possibly padding 418 to thesource packet 400 and, for example, the AL-FEC message is given orpadding data (00 h) of a difference from a size of a predeterminedrepair symbol is added. Accordingly, the source symbol 410 includes anMMT packet header 412, an MMT payload header 414, data 416, and thepossibly padding 418.

An FEC repair packet 420 includes an MMT packet header 422, an FECrepair payload ID 424, repair data 426, and a repair payload (or repairsymbol) 428. The repair data 426 is generated based on packet dropinformation by the FEC encoder, and the repair symbol 428 is generatedfrom the source symbol block.

FIG. 5 illustrates a format of a source payload, a source symbol and anFEC repair packet according to an embodiment of the present invention.

Referring to FIG. 5, the MMT payload, that is, a source payload 500includes an MMT payload header 502 and data (or payload) 504.

A source symbol 510 is generated by adding a possibly padding 516 to thesource payload 500 and, for example, the AL-FEC message is given orpadding data (00 h) of a difference from a size of a predeterminedrepair symbol is added. Accordingly, the source symbol 510 includes anMMT packet header 512, data (or payload) 514, and the possibly padding516.

An FEC repair packet 520 includes an MMT packet header 522, an FECrepair payload ID 524, repair data 526, and a repair payload (or repairsymbol) 528. The repair data 526 is generated based on packet dropinformation by the FEC encoder, and the repair symbol 528 is generatedfrom the source symbol block.

FIG. 6 illustrates another format of a source payload, a source symboland an FEC repair packet according to an embodiment of the presentinvention.

Referring to FIG. 6, the MMT payload, that is, a source payload 600includes data (or payload).

A source symbol 610 is generated by adding a possibly padding 614 to theMMT payload 600 and, for example, the AL-FEC message is given or paddingdata (00 h) of a difference from a size of a predetermined repair symbolis added. Accordingly, the source symbol 610 includes data 612 and thepossibly padding 614.

An FEC repair packet 620 includes an MMT packet header 622, an FECrepair payload ID 624, repair data 626, and a repair payload (or repairsymbol) 628. The repair data 626 is generated based on packet dropinformation by the FEC encoder, and the repair symbol 628 is generatedfrom the source symbol block.

The FEC repair payload ID may be the same as that in the filed patents10-2014-0004256 and 10-2014-0004259, and only a part different from theFEC repair payload ID of the filed patents will be described herein.That is, SSB_length information indicates a number of MMT packets beforethe packet drop instead of information on a number of source symbols ofa source symbol block, and RD length information indicating a number ofpieces of repair data is newly added to the FEC repair payload ID.

Further, the repair FEC payload ID includes a flag indicating whetherthe corresponding FEC repair packet includes repair data for protectingpacket drop information. This is because the application of the packetdrop is different according to the FEC packet block and the generationand transmission of the repair data for packet drop information are notneeded when the packet drop is not generated.

FIG. 7 illustrates an example of generation of a source packet flowaccording to an embodiment of the present invention.

Referring to FIG. 7, when there are three assets A, B, and C 700, 710,and 720, for example, non-timed data or timed-data such as audio data,video data, text data, a file, each asset is capsulated into apredetermined number of MPUs and each MPU is divided into apredetermined size of data. Then, an MMT packet flow (or source packetflow) is configured adding an MMT payload header and an MMP packetheader to each data.

That is, one of the MPUs capsulated from each asset A, B, or C 700, 710,or 720 is divided into five data payloads, and a header including apacket_ID 702 and a packet sequence number 704 is added to each datapayload. Packet_ID=0 for identifying packets of asset A 700, packet_ID=1of asset B, and packet_ID=2 of asset C are allocated, and the packetsequence number based on each packet_ID increases one by one. The headermay be, for example, an MMT packet header.

FIG. 8 illustrates an example of generating a source packet block (orsource symbol block) according to an embodiment of the presentinvention.

Referring to FIG. 8, it is assumed that an FEC source packet flow (=1source packet block) is configured by selecting packets corresponding totwo packet_IDs having packet_ID=0 or 1 from the source packet flow ofthe packets including three packet IDs and third and fifth packets ofthe packets having packet_ID=0 are dropped.

After packet drop information 806 for MMT packets is generated by firstarranging packet drop information on packets having packet_ID=0 amongthe packets after the drop and then arranging packet drop information onpackets having packet_ID=1, a repair data block 808 is generated by theFEC encoding. Here, the packet drop information may be, for example,length information of the FEC-protected packet and, at this time, thelength information of the FEC-protected packet for the dropped packet isset as 0.

FIG. 9 illustrates another example for generating a source packet block(or source symbol block) according to an embodiment of the presentinvention.

Referring to FIG. 9, it is assumed that an FEC source packet flow (=1source packet block) is configured by selecting packets corresponding totwo packet_IDs having packet_ID=0 or 1 from the source packet flow ofthe packets including three packet_IDs and third and fifth packets ofthe packets having packet_ID=0 are dropped.

After a source symbol block 906 is generated by first arranging packetshaving packet_ID=0 among the packets after the drop and then arrangingpackets having packet_ID=1, a repair symbol block 908 is generated bythe FEC encoding. If lengths of the source packets are different whenthe source packet switches to the source symbol, padding is needed(SSBG_MODE1). When the lengths of the source packets are the same aseach other, padding is not needed (SSBG_MODE0).

FIG. 10 illustrates an example of three FEC repair packets fortransmitting six repair data blocks and three repair symbols generatedfrom the embodiment of FIGS. 8 and 9.

Referring to FIG. 10, each FEC repair packet 1000 includes an MMTPheader 1002, an FEC repair payload ID 1004, repair data 1006, and arepair symbol 1008.

The MMTP header 1002 includes a packet_ID and a packet sequence number(or repair data ID) for the FEC repair packet and, here, the packet_IDfor the FEC repair packet is set as 3 to be distinguished from thesource packet. A packet sequence number field value is set to indicatean index within the repair data block of the repair data 1006. The FECrepair payload ID 1004 is set to indicate the number of packets and astart packet sequence number for each of two packet_IDs within thesource symbol block. Here, the number packets for each of the twopacket_IDs refers to the number of MMT packets before the packet drophaving the packet_ID.

The repair data 1006 includes pieces of repair data for reconstructingthe packet drop information, and the repair symbol 1008 includes repairsymbols for reconstructing the source symbols. Here, the repair data arearranged two by two, and one repair symbol is placed to follow.Accordingly, the reception device may reconstruct the packet dropinformation based on the FEC repair payload ID 1004 and the repair data1006 and properly configure the source symbol block from the receivedMMT packets by recognizing locations and the number of dropped packets.Further, the reception device reconstructs the lost packet by using therepair symbol 1008 after configuring the source symbol block.

While the present invention has been shown and described with referenceto certain embodiments thereof, it will be understood by those skilledin the art that various changes in form and details may be made thereinwithout departing from the scope of the present invention. Therefore,the scope of the present invention should not be defined as beinglimited to the embodiments, but should be defined by the appended claimsand equivalents thereof.

Further, a method and an apparatus for transmitting and receiving apacket according to an embodiment of the present invention can beimplemented in the form of hardware, software, or a combination thereof.Any such software may be stored, for example, in a volatile ornon-volatile storage device such as a ROM, a memory such as a RAM, amemory chip, a memory device, or a memory IC, or a recordable optical ormagnetic medium such as a CD, a DVD, a magnetic disk, or a magnetictape, regardless of its ability to be erased or its ability to bere-recorded. It can be also appreciated that the software may be storedin a machine (for example, a computer)-readable storage medium. A webwidget manufacturing method of the present invention can be realized bya computer or a portable terminal including a controller and a memory,and it can be seen that the memory corresponds to an example of thestorage medium which is suitable for storing a program or programsincluding instructions by which the embodiments of the present inventionare realized, and is machine readable.

Accordingly, the present invention includes a program for a codeimplementing the apparatus and method described in the appended claimsof the specification and a machine (a computer or the like)-readablestorage medium for storing the program. Further, the program may beelectronically transferred by a predetermined medium such as acommunication signal transferred through a wired or wireless connection,and the present invention appropriately includes equivalents of theprogram.

Further, an apparatus for transmitting and receiving a packet accordingto an embodiment of the present invention may receive the program from aprogram providing apparatus connected wiredly or wirelessly and storethe program. The program supply apparatus may include a program thatincludes instructions to execute the exemplary embodiments of thepresent invention, a memory that stores information or the like requiredfor the exemplary embodiments of the present invention, a communicationunit that conducts wired or wireless communication with the electronicapparatus, and a control unit that transmits a corresponding program toa transmission/reception apparatus in response to the request from theelectronic apparatus or automatically.

1. A method of transmitting a packet in a communication system, themethod comprising: generating drop information indicating the existenceor non-existence of a drop of each of at least one source packet to bedropped and remaining source packets except for the at least one sourcepacket among source packets to be transmitted; generating a repairpacket including repair data for reconstructing the drop information anda repair symbol for reconstructing the remaining source packets exceptfor the at least one source packet by performing Forward ErrorCorrection (FEC) encoding on the drop information and the remainingsource packets except for the at least one source packet; andtransmitting the remaining source packets except for the at least onesource packet and the repair packet.
 2. The method of claim 1, whereinthe drop information includes length information of each of the sourcepackets, and length information of the at least one source packet is setas
 0. 3. The method of claim 1, further comprising generating a sourcesymbol based on the remaining source packets except for the at least onesource packet.
 4. The method of claim 1, wherein the repair packetfurther includes a repair payload identifier (ID), and the repairpayload ID includes a number of source packets according to each packetID and information on a start number of source packets related to thepacket ID.
 5. A method of receiving a packet in a communication system,the method comprising: receiving source packets and a repair packetgenerated by performing Forward Error Correction (FEC) encoding on thesource packets; acquiring repair data for reconstructing dropinformation indicating the existence or non-existence of a drop of eachof the source packets and a repair symbol for reconstructing the sourcepackets from the repair packet; reconstructing the drop informationbased on the repair data and recognizing a source packet which atransmission device dropped from the reconstructed drop information; andreconstructing a source packet lost during transmission based on therepair symbol.
 6. The method of claim 5, wherein the drop informationincludes length information of each of the source packets and, whenlength information of a relevant source packet is 0, the relevant sourcepacket is detected as the source packet which the transmission devicedropped.
 7. The method of claim 5, further comprising generating asource symbol from the source packets based on information on thedropped source packet and the lost source packet.
 8. The method of claim5, wherein the repair data and the repair symbol are acquired based on arepair payload ID including a number of source packets according to eachpacket identifier (ID) and information on a start number of sourcepackets related to the packet ID.
 9. An apparatus for transmitting apacket in a communication system, the apparatus comprising: a dropinformation generator that generates drop information indicating theexistence or non-existence of a drop of each of at least one sourcepacket to be dropped and remaining source packets except for the atleast one source packet among source packets to be transmitted; anencoder that generates a repair packet including repair data forreconstructing the drop information and a repair symbol forreconstructing the remaining source packets except for the at least onesource packet by performing Forward Error Correction (FEC) encoding onthe drop information and the remaining source packets except for the atleast one source packet; and a transmitter that transmits the remainingsource packets except for the at least one source packet and the repairpacket.
 10. The apparatus of claim 9, wherein the drop informationincludes length information of each of the source packets, and lengthinformation of the at least one source packet is set as
 0. 11. Theapparatus of claim 9, further comprising a source symbol generator thatgenerates a source symbol based on the remaining source packets exceptfor the at least one source packet.
 12. The apparatus of claim 9,wherein the repair packet further includes a repair payload identifier(ID), and the repair payload ID includes a number of source packetsaccording to each packet ID and information on a start number of sourcepackets related to the packet ID.
 13. An apparatus for receiving apacket in a communication system, the apparatus comprising: a receiverthat receives source packets and a repair packet generated by performingForward Error Correction (FEC) encoding on the source packets; and adecoder that acquires repair data for reconstructing drop informationindicating the existence or non-existence of a drop of each of thesource packets and a repair symbol for reconstructing the source packetsfrom the repair packet, reconstructing the drop information based on therepair data and recognizing a source packet which a transmission devicedropped from the reconstructed drop information, and reconstructing asource packet lost during transmission based on the repair symbol. 14.The apparatus of claim 13, wherein the drop information includes lengthinformation of each of the source packets and, when length informationof a relevant source packet is 0, the decoder detects the relevantsource packet as the source packet which the transmission devicedropped.
 15. The apparatus of claim 13, further comprising an encodingsymbol generator, wherein the encoding symbol generator generates asource symbol from the source packets based on information on thedropped source packet and the lost source packet.
 16. The apparatus ofclaim 13, wherein the repair data and the repair symbol are acquiredbased on a repair payload ID including a number of source packetsaccording to each packet identifier (ID) and information on a startnumber of source packets related to the packet ID.